package secondStage.part1.Test2;

/**
 * @ClassName: [AnimalDemo]
 * @Description: 猫和狗
 * @Author: [黄劲松]
 * @CreateDate: [2021-02-08]
 * @Version: [v1.0]
 */
/*需求:请采用继承的思想实现猫和狗的案例，并在测试类中进行测试
  分析:
     ①猫:
        成员变量:姓名，年龄
        构造方法:无参，带参
        成员方法: get/set方法，抓者鼠()
     ②狗:
        成员变量:姓名，年龄
        构造方法:无参，带参
        成员方法: get/set方法, 看门（）
     ③共性:
        成员变量:姓名，年龄;构造方法:无参，带参;成员方法: get/set方法
思路:
①定义动物类(Animal)
成员变量:姓名,年龄
构造方法:无参，带参
成员方法: get/set方法
②定义猫类(Cat),继承动物类
构造方法:无参，带参
成员方法:抓者鼠()
③定义狗类(Dog)，继承动物类
构造方法:无参，带参
成员方法:看门()
④定义测试类(AnimalDemo), 写代码测试
*/
public class AnimalDemo {
    public static void main(String[] args) {
        Cat c1 = new Cat();
        c1.setName("加菲猫");
        c1.setAge(5);
        System.out.println(c1.getName() + "," + c1.getAge());
        ;
        c1.catchMouse();

        Cat c2 = new Cat("加菲猫m", 5);
        System.out.println(c2.getName() + "," + c2.getAge());
        ;
        c2.catchMouse();

        Dog d1 = new Dog();
        d1.setName("格里芬");
        d1.setAge(3);
        System.out.println(d1.getName() + "," + d1.getAge());
        ;
        d1.lookDoor();

        Dog d2 = new Dog("牧羊犬", 3);
        System.out.println(d2.getName() + "," + d2.getAge());
        ;
        d2.lookDoor();
    }
}
